﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Clases.Clases;
using AccesoBD;
using Clases.Estructuras;
using System.Data;
using System.Data.SqlClient;
using System.Data.OleDb;
using Clases.ClasesPersistentes;
using Clases.Interface;
namespace Clases.Gestores
{
    public class GestorTema
    {
        /*
         * Metodo InsertarTema
         * parametros:tema
         * calificacion
         * pgrupo,
         * pprofesor,
         * totalAportes,
         * aporteUsuario
         * publico
         *
         * Retorna :Void
         */
        public static void insetarTemas(string tema, string pgrupo, string horario, string calificacion, int totalAportes, int aporteUsuario, Boolean publico)
        {
            try
            {


                Grupo grupo = GestorGrupo.buscarxGrupo(pgrupo, horario);
                Tema tmpForo = new Tema(tema, grupo, calificacion, totalAportes, aporteUsuario, publico);
                DaoTema dao = new DaoTema();
                dao.crearTema(tmpForo);

            }
            catch (Exception e)
            {
                throw e;
            }
        }
        /*
         * Metodo ModificarTema
         * parametros:tema
         * calificacion
         * pgrupo,
         * pprofesor,
         * totalAportes,
         * aporteUsuario
         * publico
         *
         * Retorna :Void
         */
        public static void modificarTema(string tema, string pprofesor,string pgrupo, string calificacion, int totalAportes, int aporteUsuario, Boolean publico)
        {

            try
            {
                
                //Usuario profesor = GestorUsuario.buscarNombre(pprofesor);
                //Grupo grupo = GestorGrupo.buscarxGrupo(pgrupo);
                //Tema tmpForo = new Tema(tema, profesor, grupo, calificacion, totalAportes, aporteUsuario, publico);
                //DaoTema dao = new DaoTema();
                //dao.modificarTema(tmpForo);
            }
            catch (Exception e)
            {
                throw e;
            }

        }
        /*
         * Metodo LiastarTema
         * parametros:
         * Retorna lstaTema(lista de temas )
         */
        public static List<StrTema> listarTemas()
        {
            try
            {
                DaoTema dao = new DaoTema();
                List<StrTema> lista;
                lista = dao.listarTemas();
                return lista;
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        /*
         * Metodo LiastarTema
         * parametros:
         * Retorna lstaTema(lista de temas de un grupo)
         */
        public static List<StrTema> listarTemasxGrupo(string pgrupo, string phorario)
        {
            try
            {
                DaoTema dao = new DaoTema();
                List<StrTema> lista;
                Grupo grupo = GestorGrupo.buscarxGrupo(pgrupo, phorario);
                lista = dao.listarTemasDeGrupo(grupo.idGrupo);
                return lista;
            }
            catch (Exception e)
            {
                throw e;
            }
        }
    }
}
